#ifndef _SERVER_H_
#define _SERVER_H_

#include "Pool.h"
#include "Session.h"

class Server
{
private:
	Pool _io_service_pool;
	tcp::acceptor _acceptor;
	tcp::acceptor _control_acceptor;

public:
	Server();
	~Server();

	void Run();

private:
	void HandleAccept(Session *new_session, const boost::system::error_code &error);
	void HandleControlAccept(Session *control_session, const boost::system::error_code &error);
};

#endif
